[INFO] cloning repository https://github.com/duy4nt/Linked-List-Implementation
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/duy4nt/Linked-List-Implementation" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fduy4nt%2FLinked-List-Implementation", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fduy4nt%2FLinked-List-Implementation'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 1231d9afc0f6c3bff5f11dc54c1b33b3a95ed5e5
[INFO] fixing duy4nt/Linked-List-Implementation against try#622891a4e29178280638a6b63a8908bde2c0c854+cargoflags=-Zfix-edition=start=2015 for pr-157817-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fduy4nt%2FLinked-List-Implementation" "/workspace/builds/worker-0-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/duy4nt/Linked-List-Implementation
[INFO] finished tweaking git repo https://github.com/duy4nt/Linked-List-Implementation
[INFO] tweaked toml for git repo https://github.com/duy4nt/Linked-List-Implementation written to /workspace/builds/worker-0-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/duy4nt/Linked-List-Implementation on toolchain 622891a4e29178280638a6b63a8908bde2c0c854
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/duy4nt/Linked-List-Implementation already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3a6becf2bc8dde7f3fa57ede90e4f284e72d296796fc446bbb1e2c7cc0530151" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] ded304ea499143166babfa519bdd0b871a20294839db914e48d92783fb16d5f3
[INFO] running `Command { std: "docker" "start" "ded304ea499143166babfa519bdd0b871a20294839db914e48d92783fb16d5f3", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "ded304ea499143166babfa519bdd0b871a20294839db914e48d92783fb16d5f3" "/opt/rustwide/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "ded304ea499143166babfa519bdd0b871a20294839db914e48d92783fb16d5f3", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=" "-e" "RUSTDOCFLAGS=" "-w" "/opt/rustwide/workdir" "--user" "0:0" "ded304ea499143166babfa519bdd0b871a20294839db914e48d92783fb16d5f3" "/opt/rustwide/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "fix" "--allow-no-vcs" "--allow-dirty" "--frozen" "--all" "--all-targets" "--message-format=json" "-Zfix-edition=start=2015", kill_on_drop: false }`
[INFO] [stderr]     Checking lists v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] error: expected identifier, found keyword `match`
[INFO] [stdout]   --> src/fourth.rs:41:13
[INFO] [stdout]    |
[INFO] [stdout] 40 |         self.head.take().map(|old_head|v{
[INFO] [stdout]    |                                        - while parsing this struct
[INFO] [stdout] 41 |             match old_head.borrow_mut().next.tke() {
[INFO] [stdout]    |             ^^^^^ expected identifier, found keyword
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: expected type, found `,`
[INFO] [stdout]   --> src/third.rs:15:21
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct Iter<'a, T> {
[INFO] [stdout]    |            ---- while parsing this struct
[INFO] [stdout] 15 |     next: Option<&'a, Node<T>>,
[INFO] [stdout]    |                     ^ expected type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: expected one of `,`, `.`, `?`, `}`, or an operator, found `;`
[INFO] [stdout]   --> src/third.rs:26:36
[INFO] [stdout]    |
[INFO] [stdout] 24 |         List {head: Some(Rc::new(Node {
[INFO] [stdout]    |                                  ---- while parsing this struct
[INFO] [stdout] 25 |             elem: elem,
[INFO] [stdout] 26 |             next: self.head.clone();
[INFO] [stdout]    |                                    ^
[INFO] [stdout]    |                                    |
[INFO] [stdout]    |                                    expected one of `,`, `.`, `?`, `}`, or an operator
[INFO] [stdout]    |                                    help: try adding a comma: `,`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: trait is not supported in `trait`s or `impl`s
[INFO] [stdout]   --> src/first.rs:41:5
[INFO] [stdout]    |
[INFO] [stdout] 41 |     pub trait Drop {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider moving the trait out to a nearby module scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: expected identifier, found keyword `match`
[INFO] [stdout]   --> src/fourth.rs:41:13
[INFO] [stdout]    |
[INFO] [stdout] 40 |         self.head.take().map(|old_head|v{
[INFO] [stdout]    |                                        - while parsing this struct
[INFO] [stdout] 41 |             match old_head.borrow_mut().next.tke() {
[INFO] [stdout]    |             ^^^^^ expected identifier, found keyword
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: expected type, found `,`
[INFO] [stdout]   --> src/third.rs:15:21
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct Iter<'a, T> {
[INFO] [stdout]    |            ---- while parsing this struct
[INFO] [stdout] 15 |     next: Option<&'a, Node<T>>,
[INFO] [stdout]    |                     ^ expected type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: expected one of `,`, `.`, `?`, `}`, or an operator, found `;`
[INFO] [stdout]   --> src/third.rs:26:36
[INFO] [stdout]    |
[INFO] [stdout] 24 |         List {head: Some(Rc::new(Node {
[INFO] [stdout]    |                                  ---- while parsing this struct
[INFO] [stdout] 25 |             elem: elem,
[INFO] [stdout] 26 |             next: self.head.clone();
[INFO] [stdout]    |                                    ^
[INFO] [stdout]    |                                    |
[INFO] [stdout]    |                                    expected one of `,`, `.`, `?`, `}`, or an operator
[INFO] [stdout]    |                                    help: try adding a comma: `,`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: trait is not supported in `trait`s or `impl`s
[INFO] [stdout]   --> src/first.rs:41:5
[INFO] [stdout]    |
[INFO] [stdout] 41 |     pub trait Drop {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider moving the trait out to a nearby module scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `refCell` in this scope
[INFO] [stdout]   --> src/fourth.rs:18:27
[INFO] [stdout]    |
[INFO] [stdout] 18 |     fn new(elem: T) -> Rc<refCell<Self>> {
[INFO] [stdout]    |                           ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/core/src/cell.rs:849:0
[INFO] [stdout]    |
[INFO] [stdout]    = note: similarly named struct `RefCell` defined here
[INFO] [stdout] help: a struct with a similar name exists
[INFO] [stdout]    |
[INFO] [stdout] 18 -     fn new(elem: T) -> Rc<refCell<Self>> {
[INFO] [stdout] 18 +     fn new(elem: T) -> Rc<RefCell<Self>> {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0422]: cannot find struct, variant or union type `v` in this scope
[INFO] [stdout]   --> src/fourth.rs:40:40
[INFO] [stdout]    |
[INFO] [stdout] 40 |         self.head.take().map(|old_head|v{
[INFO] [stdout]    |                                        ^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0531]: cannot find tuple struct or tuple variant `ok` in this scope
[INFO] [stdout]   --> src/third.rs:59:20
[INFO] [stdout]    |
[INFO] [stdout] 59 |             if let ok(mut node) = Rc::try_unwrap(node){
[INFO] [stdout]    |                    ^^
[INFO] [stdout]    |
[INFO] [stdout]   --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/core/src/result.rs:561:4
[INFO] [stdout]    |
[INFO] [stdout]    = note: similarly named tuple variant `Ok` defined here
[INFO] [stdout] help: a tuple variant with a similar name exists (notice the capitalization)
[INFO] [stdout]    |
[INFO] [stdout] 59 -             if let ok(mut node) = Rc::try_unwrap(node){
[INFO] [stdout] 59 +             if let Ok(mut node) = Rc::try_unwrap(node){
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0119]: conflicting implementations of trait `Drop` for type `Box<first::Node>`
[INFO] [stdout]   --> src/first.rs:66:1
[INFO] [stdout]    |
[INFO] [stdout] 66 | impl Drop for Box<Node> {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: conflicting implementation in crate `alloc`:
[INFO] [stdout]            - impl<T, A> Drop for Box<T, A>
[INFO] [stdout]              where A: Allocator, T: ?Sized;
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0120]: the `Drop` trait may only be implemented for local structs, enums, and unions
[INFO] [stdout]   --> src/first.rs:66:15
[INFO] [stdout]    |
[INFO] [stdout] 66 | impl Drop for Box<Node> {
[INFO] [stdout]    |               ^^^^^^^^^ must be a struct, enum, or union in the current crate
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0309]: the parameter type `T` may not live long enough
[INFO] [stdout]   --> src/third.rs:44:5
[INFO] [stdout]    |
[INFO] [stdout] 43 | impl <'a, T> Iterator for Iter<'a, T> {
[INFO] [stdout]    |       -- the parameter type `T` must be valid for the lifetime `'a` as defined here...
[INFO] [stdout] 44 |     type Item = &'a T;
[INFO] [stdout]    |     ^^^^^^^^^ ...so that the reference type `&'a T` does not outlive the data it points at
[INFO] [stdout]    |
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]    |
[INFO] [stdout] 43 | impl <'a, T: 'a> Iterator for Iter<'a, T> {
[INFO] [stdout]    |            ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `head` on type `&mut fourth::Node<T>`
[INFO] [stdout]   --> src/fourth.rs:27:20
[INFO] [stdout]    |
[INFO] [stdout] 27 |         match self.head.take() {
[INFO] [stdout]    |                    ^^^^ unknown field
[INFO] [stdout]    |
[INFO] [stdout]    = note: available fields are: `elem`, `next`, `prev`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `head` on type `&mut fourth::Node<T>`
[INFO] [stdout]   --> src/fourth.rs:31:22
[INFO] [stdout]    |
[INFO] [stdout] 31 |                 self.head = Some(new_head);
[INFO] [stdout]    |                      ^^^^ unknown field
[INFO] [stdout]    |
[INFO] [stdout]    = note: available fields are: `elem`, `next`, `prev`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `tail` on type `&mut fourth::Node<T>`
[INFO] [stdout]   --> src/fourth.rs:34:22
[INFO] [stdout]    |
[INFO] [stdout] 34 |                 self.tail = Some(new_head.clone());
[INFO] [stdout]    |                      ^^^^ unknown field
[INFO] [stdout]    |
[INFO] [stdout]    = note: available fields are: `elem`, `next`, `prev`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `head` on type `&mut fourth::Node<T>`
[INFO] [stdout]   --> src/fourth.rs:35:22
[INFO] [stdout]    |
[INFO] [stdout] 35 |                 self.head = Some(new_head);
[INFO] [stdout]    |                      ^^^^ unknown field
[INFO] [stdout]    |
[INFO] [stdout]    = note: available fields are: `elem`, `next`, `prev`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `head` on type `&mut fourth::Node<T>`
[INFO] [stdout]   --> src/fourth.rs:40:14
[INFO] [stdout]    |
[INFO] [stdout] 40 |         self.head.take().map(|old_head|v{
[INFO] [stdout]    |              ^^^^ unknown field
[INFO] [stdout]    |
[INFO] [stdout]    = note: available fields are: `elem`, `next`, `prev`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find type `refCell` in this scope
[INFO] [stdout]   --> src/fourth.rs:18:27
[INFO] [stdout]    |
[INFO] [stdout] 18 |     fn new(elem: T) -> Rc<refCell<Self>> {
[INFO] [stdout]    |                           ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/core/src/cell.rs:849:0
[INFO] [stdout]    |
[INFO] [stdout]    = note: similarly named struct `RefCell` defined here
[INFO] [stdout] help: a struct with a similar name exists
[INFO] [stdout]    |
[INFO] [stdout] 18 -     fn new(elem: T) -> Rc<refCell<Self>> {
[INFO] [stdout] 18 +     fn new(elem: T) -> Rc<RefCell<Self>> {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0422]: cannot find struct, variant or union type `v` in this scope
[INFO] [stdout]   --> src/fourth.rs:40:40
[INFO] [stdout]    |
[INFO] [stdout] 40 |         self.head.take().map(|old_head|v{
[INFO] [stdout]    |                                        ^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0531]: cannot find tuple struct or tuple variant `ok` in this scope
[INFO] [stdout]   --> src/third.rs:59:20
[INFO] [stdout]    |
[INFO] [stdout] 59 |             if let ok(mut node) = Rc::try_unwrap(node){
[INFO] [stdout]    |                    ^^
[INFO] [stdout]    |
[INFO] [stdout]   --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/core/src/result.rs:561:4
[INFO] [stdout]    |
[INFO] [stdout]    = note: similarly named tuple variant `Ok` defined here
[INFO] [stdout] help: a tuple variant with a similar name exists (notice the capitalization)
[INFO] [stdout]    |
[INFO] [stdout] 59 -             if let ok(mut node) = Rc::try_unwrap(node){
[INFO] [stdout] 59 +             if let Ok(mut node) = Rc::try_unwrap(node){
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0119]: conflicting implementations of trait `Drop` for type `Box<first::Node>`
[INFO] [stdout]   --> src/first.rs:66:1
[INFO] [stdout]    |
[INFO] [stdout] 66 | impl Drop for Box<Node> {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: conflicting implementation in crate `alloc`:
[INFO] [stdout]            - impl<T, A> Drop for Box<T, A>
[INFO] [stdout]              where A: Allocator, T: ?Sized;
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0120]: the `Drop` trait may only be implemented for local structs, enums, and unions
[INFO] [stdout]   --> src/first.rs:66:15
[INFO] [stdout]    |
[INFO] [stdout] 66 | impl Drop for Box<Node> {
[INFO] [stdout]    |               ^^^^^^^^^ must be a struct, enum, or union in the current crate
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/third.rs:35:9
[INFO] [stdout]    |
[INFO] [stdout] 18 | impl<T> List<T> {
[INFO] [stdout]    |      - expected this type parameter
[INFO] [stdout] ...
[INFO] [stdout] 34 |     pub fn head(&self) -> Option<T> {
[INFO] [stdout]    |                           --------- expected `Option<T>` because of return type
[INFO] [stdout] 35 |         self.head.as_ref().map(|node| &node.elem)
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `Option<T>`, found `Option<&T>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected enum `Option<_>`
[INFO] [stdout]               found enum `Option<&_>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0309]: the parameter type `T` may not live long enough
[INFO] [stdout]   --> src/third.rs:44:5
[INFO] [stdout]    |
[INFO] [stdout] 43 | impl <'a, T> Iterator for Iter<'a, T> {
[INFO] [stdout]    |       -- the parameter type `T` must be valid for the lifetime `'a` as defined here...
[INFO] [stdout] 44 |     type Item = &'a T;
[INFO] [stdout]    |     ^^^^^^^^^ ...so that the reference type `&'a T` does not outlive the data it points at
[INFO] [stdout]    |
[INFO] [stdout] help: consider adding an explicit lifetime bound
[INFO] [stdout]    |
[INFO] [stdout] 43 | impl <'a, T: 'a> Iterator for Iter<'a, T> {
[INFO] [stdout]    |            ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `head` on type `&mut fourth::Node<T>`
[INFO] [stdout]   --> src/fourth.rs:27:20
[INFO] [stdout]    |
[INFO] [stdout] 27 |         match self.head.take() {
[INFO] [stdout]    |                    ^^^^ unknown field
[INFO] [stdout]    |
[INFO] [stdout]    = note: available fields are: `elem`, `next`, `prev`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `head` on type `&mut fourth::Node<T>`
[INFO] [stdout]   --> src/fourth.rs:31:22
[INFO] [stdout]    |
[INFO] [stdout] 31 |                 self.head = Some(new_head);
[INFO] [stdout]    |                      ^^^^ unknown field
[INFO] [stdout]    |
[INFO] [stdout]    = note: available fields are: `elem`, `next`, `prev`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `tail` on type `&mut fourth::Node<T>`
[INFO] [stdout]   --> src/fourth.rs:34:22
[INFO] [stdout]    |
[INFO] [stdout] 34 |                 self.tail = Some(new_head.clone());
[INFO] [stdout]    |                      ^^^^ unknown field
[INFO] [stdout]    |
[INFO] [stdout]    = note: available fields are: `elem`, `next`, `prev`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `head` on type `&mut fourth::Node<T>`
[INFO] [stdout]   --> src/fourth.rs:35:22
[INFO] [stdout]    |
[INFO] [stdout] 35 |                 self.head = Some(new_head);
[INFO] [stdout]    |                      ^^^^ unknown field
[INFO] [stdout]    |
[INFO] [stdout]    = note: available fields are: `elem`, `next`, `prev`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `head` on type `&mut fourth::Node<T>`
[INFO] [stdout]   --> src/fourth.rs:40:14
[INFO] [stdout]    |
[INFO] [stdout] 40 |         self.head.take().map(|old_head|v{
[INFO] [stdout]    |              ^^^^ unknown field
[INFO] [stdout]    |
[INFO] [stdout]    = note: available fields are: `elem`, `next`, `prev`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant, associated function, or constant named `more` found for enum `first::Link` in the current scope
[INFO] [stdout]   --> src/first.rs:59:19
[INFO] [stdout]    |
[INFO] [stdout]  7 | enum Link {
[INFO] [stdout]    | --------- variant, associated function, or constant `more` not found for this enum
[INFO] [stdout] ...
[INFO] [stdout] 59 |             Link::more(ref mut boxed_node) => {
[INFO] [stdout]    |                   ^^^^ variant, associated function, or constant not found in `first::Link`
[INFO] [stdout]    |
[INFO] [stdout] help: there is a variant with a similar name
[INFO] [stdout]    |
[INFO] [stdout] 59 -             Link::more(ref mut boxed_node) => {
[INFO] [stdout] 59 +             Link::More(ref mut boxed_node) => {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `ptr` on type `&mut Box<first::Node>`
[INFO] [stdout]   --> src/first.rs:68:14
[INFO] [stdout]    |
[INFO] [stdout] 68 |         self.ptr.drop();
[INFO] [stdout]    |              ^^^ unknown field
[INFO] [stdout]    |
[INFO] [stdout]    = note: available fields are: `elem`, `next`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `ptr` on type `&mut Box<first::Node>`
[INFO] [stdout]   --> src/first.rs:69:24
[INFO] [stdout]    |
[INFO] [stdout] 69 |         deallocte(self.ptr);
[INFO] [stdout]    |                        ^^^ unknown field
[INFO] [stdout]    |
[INFO] [stdout]    = note: available fields are: `elem`, `next`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `deallocte` in this scope
[INFO] [stdout]   --> src/first.rs:69:9
[INFO] [stdout]    |
[INFO] [stdout] 69 |         deallocte(self.ptr);
[INFO] [stdout]    |         ^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0040]: explicit use of destructor method
[INFO] [stdout]   --> src/first.rs:75:19
[INFO] [stdout]    |
[INFO] [stdout] 75 |         self.next.drop();
[INFO] [stdout]    |                   ^^^^ explicit destructor calls not allowed
[INFO] [stdout]    |
[INFO] [stdout] help: consider using `drop` function
[INFO] [stdout]    |
[INFO] [stdout] 75 -         self.next.drop();
[INFO] [stdout] 75 +         drop(self.next);
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `next` exists for struct `Box<second::Node<T>>`, but its trait bounds were not satisfied
[INFO] [stdout]   --> src/second.rs:92:35
[INFO] [stdout]    |
[INFO] [stdout]  7 | struct Node<T> {
[INFO] [stdout]    | -------------- doesn't satisfy `second::Node<T>: Iterator`
[INFO] [stdout] ...
[INFO] [stdout] 92 |             cur_link = boxed_node.next().take();
[INFO] [stdout]    |                                   ^^^^-- help: remove the arguments
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   field, not a method
[INFO] [stdout]    |
[INFO] [stdout]    = note: the following trait bounds were not satisfied:
[INFO] [stdout]            `second::Node<T>: Iterator`
[INFO] [stdout]            which is required by `Box<second::Node<T>>: Iterator`
[INFO] [stdout] note: the trait `Iterator` must be implemented
[INFO] [stdout]   --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/core/src/iter/traits/iterator.rs:42:0
[INFO] [stdout]    = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]    = note: the trait `Iterator` defines an item `next`, but is explicitly unimplemented
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0040, E0119, E0120, E0308, E0309, E0422, E0425, E0531, E0599...
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0040`.
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `peek_front` found for struct `fourth::List<T>` in the current scope
[INFO] [stdout]   --> src/fourth.rs:65:18
[INFO] [stdout]    |
[INFO] [stdout]  4 | pub struct List<T> {
[INFO] [stdout]    | ------------------ method `peek_front` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 65 |     assert!(list.peek_front().is_none());
[INFO] [stdout]    |                  ^^^^^^^^^^ method not found in `fourth::List<_>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `push_front` found for struct `fourth::List<T>` in the current scope
[INFO] [stdout]   --> src/fourth.rs:66:10
[INFO] [stdout]    |
[INFO] [stdout]  4 | pub struct List<T> {
[INFO] [stdout]    | ------------------ method `push_front` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 66 |     list.push_front(1); 
[INFO] [stdout]    |          ^^^^^^^^^^ method not found in `fourth::List<_>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `push_front` found for struct `fourth::List<T>` in the current scope
[INFO] [stdout]   --> src/fourth.rs:67:10
[INFO] [stdout]    |
[INFO] [stdout]  4 | pub struct List<T> {
[INFO] [stdout]    | ------------------ method `push_front` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 67 |     list.push_front(2);
[INFO] [stdout]    |          ^^^^^^^^^^ method not found in `fourth::List<_>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `lists` (lib) due to 22 previous errors
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] error[E0599]: no method named `push_front` found for struct `fourth::List<T>` in the current scope
[INFO] [stdout]   --> src/fourth.rs:68:10
[INFO] [stdout]    |
[INFO] [stdout]  4 | pub struct List<T> {
[INFO] [stdout]    | ------------------ method `push_front` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 68 |     list.push_front(3);
[INFO] [stdout]    |          ^^^^^^^^^^ method not found in `fourth::List<_>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `peek_front` found for struct `fourth::List<T>` in the current scope
[INFO] [stdout]   --> src/fourth.rs:70:23
[INFO] [stdout]    |
[INFO] [stdout]  4 | pub struct List<T> {
[INFO] [stdout]    | ------------------ method `peek_front` not found for this struct
[INFO] [stdout] ...
[INFO] [stdout] 70 |     assert_eq!(&*list.peek_front().unwrap(), &3);
[INFO] [stdout]    |                       ^^^^^^^^^^ method not found in `fourth::List<_>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/third.rs:35:9
[INFO] [stdout]    |
[INFO] [stdout] 18 | impl<T> List<T> {
[INFO] [stdout]    |      - expected this type parameter
[INFO] [stdout] ...
[INFO] [stdout] 34 |     pub fn head(&self) -> Option<T> {
[INFO] [stdout]    |                           --------- expected `Option<T>` because of return type
[INFO] [stdout] 35 |         self.head.as_ref().map(|node| &node.elem)
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `Option<T>`, found `Option<&T>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected enum `Option<_>`
[INFO] [stdout]               found enum `Option<&_>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/third.rs:78:33
[INFO] [stdout]    |
[INFO] [stdout] 78 |         assert_eq!(list.head(), Some(&3));
[INFO] [stdout]    |                                 ^^^^^^^^ expected `Option<{integer}>`, found `Option<&{integer}>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected enum `Option<{integer}>`
[INFO] [stdout]               found enum `Option<&{integer}>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/third.rs:81:33
[INFO] [stdout]    |
[INFO] [stdout] 81 |         assert_eq!(list.head(), Some(&2));
[INFO] [stdout]    |                                 ^^^^^^^^ expected `Option<{integer}>`, found `Option<&{integer}>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected enum `Option<{integer}>`
[INFO] [stdout]               found enum `Option<&{integer}>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/third.rs:84:33
[INFO] [stdout]    |
[INFO] [stdout] 84 |         assert_eq!(list.head(), Some(&1));
[INFO] [stdout]    |                                 ^^^^^^^^ expected `Option<{integer}>`, found `Option<&{integer}>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected enum `Option<{integer}>`
[INFO] [stdout]               found enum `Option<&{integer}>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no variant, associated function, or constant named `more` found for enum `first::Link` in the current scope
[INFO] [stdout]   --> src/first.rs:59:19
[INFO] [stdout]    |
[INFO] [stdout]  7 | enum Link {
[INFO] [stdout]    | --------- variant, associated function, or constant `more` not found for this enum
[INFO] [stdout] ...
[INFO] [stdout] 59 |             Link::more(ref mut boxed_node) => {
[INFO] [stdout]    |                   ^^^^ variant, associated function, or constant not found in `first::Link`
[INFO] [stdout]    |
[INFO] [stdout] help: there is a variant with a similar name
[INFO] [stdout]    |
[INFO] [stdout] 59 -             Link::more(ref mut boxed_node) => {
[INFO] [stdout] 59 +             Link::More(ref mut boxed_node) => {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `ptr` on type `&mut Box<first::Node>`
[INFO] [stdout]   --> src/first.rs:68:14
[INFO] [stdout]    |
[INFO] [stdout] 68 |         self.ptr.drop();
[INFO] [stdout]    |              ^^^ unknown field
[INFO] [stdout]    |
[INFO] [stdout]    = note: available fields are: `elem`, `next`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `ptr` on type `&mut Box<first::Node>`
[INFO] [stdout]   --> src/first.rs:69:24
[INFO] [stdout]    |
[INFO] [stdout] 69 |         deallocte(self.ptr);
[INFO] [stdout]    |                        ^^^ unknown field
[INFO] [stdout]    |
[INFO] [stdout]    = note: available fields are: `elem`, `next`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `deallocte` in this scope
[INFO] [stdout]   --> src/first.rs:69:9
[INFO] [stdout]    |
[INFO] [stdout] 69 |         deallocte(self.ptr);
[INFO] [stdout]    |         ^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0040]: explicit use of destructor method
[INFO] [stdout]   --> src/first.rs:75:19
[INFO] [stdout]    |
[INFO] [stdout] 75 |         self.next.drop();
[INFO] [stdout]    |                   ^^^^ explicit destructor calls not allowed
[INFO] [stdout]    |
[INFO] [stdout] help: consider using `drop` function
[INFO] [stdout]    |
[INFO] [stdout] 75 -         self.next.drop();
[INFO] [stdout] 75 +         drop(self.next);
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: the method `next` exists for struct `Box<second::Node<T>>`, but its trait bounds were not satisfied
[INFO] [stdout]   --> src/second.rs:92:35
[INFO] [stdout]    |
[INFO] [stdout]  7 | struct Node<T> {
[INFO] [stdout]    | -------------- doesn't satisfy `second::Node<T>: Iterator`
[INFO] [stdout] ...
[INFO] [stdout] 92 |             cur_link = boxed_node.next().take();
[INFO] [stdout]    |                                   ^^^^-- help: remove the arguments
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   field, not a method
[INFO] [stdout]    |
[INFO] [stdout]    = note: the following trait bounds were not satisfied:
[INFO] [stdout]            `second::Node<T>: Iterator`
[INFO] [stdout]            which is required by `Box<second::Node<T>>: Iterator`
[INFO] [stdout] note: the trait `Iterator` must be implemented
[INFO] [stdout]   --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/core/src/iter/traits/iterator.rs:42:0
[INFO] [stdout]    = help: items from traits can only be used if the trait is implemented and in scope
[INFO] [stdout]    = note: the trait `Iterator` defines an item `next`, but is explicitly unimplemented
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0040, E0119, E0120, E0308, E0309, E0422, E0425, E0531, E0599...
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0040`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `lists` (lib test) due to 30 previous errors
[INFO] running `Command { std: "docker" "inspect" "ded304ea499143166babfa519bdd0b871a20294839db914e48d92783fb16d5f3", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ded304ea499143166babfa519bdd0b871a20294839db914e48d92783fb16d5f3", kill_on_drop: false }`
[INFO] [stdout] ded304ea499143166babfa519bdd0b871a20294839db914e48d92783fb16d5f3
